package org.spring.springboot.app.sys.office.dao;

import org.spring.springboot.app.sys.office.domain.bo.AgentTypeOfficeBO;
import org.spring.springboot.app.sys.office.domain.po.AgentTypeOfficePO;
import org.spring.springboot.app.sys.office.domain.po.SysOfficePO;
import org.spring.springboot.app.sys.office.domain.po.SysOfficeWalletPO;
import org.spring.springboot.app.sys.office.domain.vo.SysOfficeAllResVO;

import java.util.List;

public interface SysOfficeDao {
    int deleteByPrimaryKey(String id);

    int insert(SysOfficePO sysOfficePO);

    int insertSelective(SysOfficePO record);

    SysOfficePO selectByPrimaryKey(String id);

    List<SysOfficeAllResVO> findAll();

    List<SysOfficeAllResVO> findOfficeId(String id,String str);

    int updateByPrimaryKeySelective(SysOfficePO record);

    int updateByPrimaryKey(SysOfficePO record);

    Long findMaxSortByParentId(String parentId);

    String findGradeByParentId(String id);

    String findParentsByParentId(String id);

    List<SysOfficeAllResVO> findAllBySysOffice(String[] type,String parent_id);

    int insertOfficeAgentType(AgentTypeOfficePO agentTypeOfficePO);

    int delOfficeAgentType(String officeId);

    List<AgentTypeOfficeBO> findAgentTypeByOfficeId(String officeId);

    List<SysOfficeAllResVO> findOfficeChildrenByPId(String officeId,String type);

    SysOfficeWalletPO queryWallet(String id);

    int updateWallet(SysOfficeWalletPO wallet);

    SysOfficePO queryAreaOffice(String areaId, String type);
}